﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace GestionIncidencias.Controllers
{
    public class UsuarioController : Controller
    {

        UsuariosWS.UsuariosClient proxy = new UsuariosWS.UsuariosClient();


        //
        // GET: /Usuario/

        public ActionResult Index()
        {
            return View(proxy.ListarUsuario());
        }

        //
        // GET: /Usuario/Details/5

        public ActionResult Details(int id)
        {
            return View(proxy.ObtenerUsuario(id));
        }

        //
        // GET: /Usuario/Create

        public ActionResult Create()
        {
            return View();
        } 

        //
        // POST: /Usuario/Create

        [HttpPost]
        public ActionResult Create(FormCollection collection)
        {
            if (ModelState.IsValid)
            {
            try
            {
                {
                string nombre= collection["Nombre"]; 
                string apellido= collection["Apellido"];
                string area= collection["Area"];
                string login= collection["Login"];
                string contrasena = collection["Contrasena"];
                string tipo = collection["Tipo"];

                proxy.CrearUsuario(nombre, apellido, area, login, contrasena, tipo);
            };
                return RedirectToAction("Index");
            }
            catch
            {
            }
             
            }
           return View();
        }
        
        //
        // GET: /Usuario/Edit/5
 
        public ActionResult Edit(int id)
        {
            return View(proxy.ObtenerUsuario(id));
        }

        //
        // POST: /Usuario/Edit/5

        [HttpPost]
        public ActionResult Edit(int id, FormCollection collection)
        {
            try
            {
                string nombre = collection["Nombre"];
                string apellido = collection["Apellido"];
                string area = collection["Area"];
                string login = collection["Login"];
                string contrasena = collection["Contrasena"];
                string tipo = collection["Tipo"];

                proxy.ModificarUsuario(id, nombre, apellido, area, login, contrasena, tipo);
 
                return RedirectToAction("Index");
            }
            catch
            {
                return View();
            }
        }

        //
        // GET: /Usuario/Delete/5
 
        public ActionResult Delete(int id)
        {
            return View(proxy.ObtenerUsuario(id));
        }

        //
        // POST: /Usuario/Delete/5

        [HttpPost]
        public ActionResult Delete(int id, FormCollection collection)
        {
            try
            {
                proxy.EliminarUsuario(id);
                return RedirectToAction("Index");
            }
            catch
            {
                return View();
            }
        }
    }
}
